package com.clothing.service;

import java.util.List;

import com.clothing.entity.LeaveMessage;
import com.clothing.entity.LeaveMessageReply;
import com.clothing.utils.page.Page;
import com.clothing.utils.page.Pageable;

/**
 * @ClassName: LeaveMessageReplyService 
 * @Description: TODO(Service) 
 * @author Charles.Tao 
 * @date 2017年9月6日 下午3:42:45 
 * @version 1.0
 */
public interface LeaveMessageReplyService extends BaseService<LeaveMessageReply, Long>
{
    /**
     * @Title: sendMessage 
     * @Description: TODO(发送消息) 
     * @param @param leaveMessage
     * @param @param isNew
     * @param @param userId
     * @param @param content 设定文件 
     * @return void 返回类型  
     * @throws
     */
    void sendMessage(LeaveMessage leaveMessage, boolean isNew, Long userId, String content);

    /**
     * @Title: findLeaveMessageDetail 
     * @Description: TODO(留言详情) 
     * @param @param leaveMessageId
     * @param @param pageable
     * @param @return 设定文件 
     * @return Page<LeaveMessageReply> 返回类型  
     * @throws
     */
    Page<LeaveMessageReply> findLeaveMessageDetail(Long leaveMessageId, Pageable pageable);

    /**
     * @Title: findUnreadLeaveMessageDetail 
     * @Description: TODO(获取未读留言) 
     * @param @param leaveMessageId
     * @param @return 设定文件 
     * @return List<LeaveMessageReply> 返回类型  
     * @throws
     */
    List<LeaveMessageReply> findUnreadLeaveMessageDetail(Long leaveMessageId);

    /**
     * @Title: findNewMessage 
     * @Description: TODO(查询最新消息) 
     * @param @param leaveMessageId
     * @param @param lastMessageId
     * @param @return 设定文件 
     * @return List<LeaveMessageReply> 返回类型  
     * @throws
     */
    List<LeaveMessageReply> findNewMessage(Long leaveMessageId, Long lastMessageId);
}
